#include "pch.h"

namespace Shared
{
    struct Handle
    {
        void *handle = 0;

        bool Avail();
        bool Open(const char *path);
        int Close();

        void *GetProjAddr(const char *funcName);

        template <typename T>
        T GetProcAddrAs(const char *funcName)
        {
            return (T)GetProjAddr(funcName);
        }

        std::string GetSharedPath(const std::string &name);
    };
};